package interfaz;

import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.Window;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JOptionPane;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.sql.SQLException;
import java.util.ArrayList;

import javax.swing.DefaultComboBoxModel;

import entidades.DAOs.DAOpuntajes;
import entidades.DTOs.DTOJugador;
import entidades.DTOs.DTOPuntaje;

public class GestionarPuntajeFechaB extends JDialog {
	private GestionarPuntajeFechaB frame2;
	private JPanel contentPane;
	private DTOPuntaje puntajeCargado;
	/**
	 * Launch the application.
	 */
	/*public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					frame2 = new GestionarPuntajeFechaB();
					frame2.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}
*/
	/**
	 * Create the frame.
	 */
	public GestionarPuntajeFechaB(final DTOJugador dtoJugador, final int id_fecha,final int equipo) {
		setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE);
		setBounds(100, 100, 325, 480);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		
		JLabel lblIngresoDeDatos = new JLabel("Ingreso de datos del jugador");
		lblIngresoDeDatos.setFont(new Font("Traditional Arabic", Font.PLAIN, 18));
		lblIngresoDeDatos.setBounds(53, 11, 248, 29);
		contentPane.add(lblIngresoDeDatos);
		
		JLabel lblCalificacion = new JLabel("Calificacion:");
		lblCalificacion.setBounds(10, 80, 98, 14);
		contentPane.add(lblCalificacion);
		
		JLabel lblGolesConvertidos = new JLabel("Goles convertidos:");
		lblGolesConvertidos.setBounds(10, 105, 132, 14);
		contentPane.add(lblGolesConvertidos);
		
		JLabel lblGolesRecibidos = new JLabel("Goles recibidos:");
		lblGolesRecibidos.setBounds(10, 129, 111, 14);
		contentPane.add(lblGolesRecibidos);
		
		JLabel lblPenalesConvertidos = new JLabel("Penales convertidos:");
		lblPenalesConvertidos.setBounds(10, 179, 136, 14);
		contentPane.add(lblPenalesConvertidos);
		
		JLabel lblPenalesErrados = new JLabel("Penales errados:");
		lblPenalesErrados.setBounds(10, 204, 111, 14);
		contentPane.add(lblPenalesErrados);
		
		JLabel lblPenalesAtajados = new JLabel("Penales atajados:");
		lblPenalesAtajados.setBounds(10, 229, 111, 14);
		contentPane.add(lblPenalesAtajados);
		
		JLabel lblsoloArqueros = new JLabel("(solo arqueros)");
		lblsoloArqueros.setBounds(217, 129, 98, 14);
		contentPane.add(lblsoloArqueros);
		
		JLabel label = new JLabel("(solo arqueros)");
		label.setBounds(217, 229, 87, 14);
		contentPane.add(label);
		
		JLabel lblGolesEnContra = new JLabel("Goles en contra:");
		lblGolesEnContra.setBounds(10, 154, 98, 14);
		contentPane.add(lblGolesEnContra);
		
		final JCheckBox chckbxFigura = new JCheckBox("Figura de la cancha");
		chckbxFigura.setBounds(10, 272, 136, 23);
		contentPane.add(chckbxFigura);
		
		final JCheckBox chckbxTarjetaAmarilla = new JCheckBox("Tarjeta amarilla");
		chckbxTarjetaAmarilla.setBounds(10, 303, 140, 23);
		contentPane.add(chckbxTarjetaAmarilla);
		
		final JCheckBox chckbxTarjetaRoja = new JCheckBox("Tarjeta roja");
		chckbxTarjetaRoja.setBounds(10, 331, 97, 23);
		contentPane.add(chckbxTarjetaRoja);
		
		final JCheckBox chckbxJugoMenosDe = new JCheckBox("Jugo menos de 20'");
		chckbxJugoMenosDe.setBounds(10, 357, 136, 23);
		contentPane.add(chckbxJugoMenosDe);
		
		final JComboBox calificacion = new JComboBox();
		calificacion.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"}));
		calificacion.setBounds(152, 77, 55, 20);
		contentPane.add(calificacion);
		
		final JComboBox golesConvertidos = new JComboBox();
		golesConvertidos.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6"}));
		golesConvertidos.setBounds(152, 102, 55, 20);
		contentPane.add(golesConvertidos);
		
		final JComboBox golesRecibidos = new JComboBox();
		golesRecibidos.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6"}));
		golesRecibidos.setBounds(152, 126, 55, 20);
		contentPane.add(golesRecibidos);
		
		final JComboBox golesEnContra = new JComboBox();
		golesEnContra.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6"}));
		golesEnContra.setBounds(152, 151, 55, 20);
		contentPane.add(golesEnContra);
		
		final JComboBox penalesConvertidos = new JComboBox();
		penalesConvertidos.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6"}));
		penalesConvertidos.setBounds(152, 176, 55, 20);
		contentPane.add(penalesConvertidos);
		
		final JComboBox penalesErrados = new JComboBox();
		penalesErrados.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6"}));
		penalesErrados.setBounds(152, 201, 55, 20);
		contentPane.add(penalesErrados);
		
		final JComboBox penalesAtajados = new JComboBox();
		penalesAtajados.setModel(new DefaultComboBoxModel(new String[] {"0", "1", "2", "3", "4", "5", "6"}));
		penalesAtajados.setBounds(152, 226, 55, 20);
		contentPane.add(penalesAtajados);
		
		try {
			if (!DAOpuntajes.getPuntajes(dtoJugador.getId_jugador(),id_fecha).isEmpty()){
				DTOPuntaje puntajeCargado = DAOpuntajes.getPuntaje(dtoJugador.getId_jugador(),id_fecha);
				
				calificacion.setSelectedItem(Integer.toString(puntajeCargado.getCalificacion()));
				golesConvertidos.setSelectedItem(Integer.toString(puntajeCargado.getGolesConvertidos()));
				golesRecibidos.setSelectedItem(Integer.toString(puntajeCargado.getGolesRecibidos()));
				golesEnContra.setSelectedItem(Integer.toString(puntajeCargado.getGolesEnContra()));
				penalesConvertidos.setSelectedItem(Integer.toString(puntajeCargado.getPenalesConvertidos()));
				penalesErrados.setSelectedItem(Integer.toString(puntajeCargado.getPenalesErrados()));
				penalesAtajados.setSelectedItem(Integer.toString(puntajeCargado.getPenalesAtajados()));
				chckbxFigura.setSelected(puntajeCargado.isFiguraCancha());
				chckbxTarjetaAmarilla.setSelected(puntajeCargado.isAmarilla());
				chckbxTarjetaRoja.setSelected(puntajeCargado.isRoja());
				chckbxJugoMenosDe.setSelected(puntajeCargado.isJugoMenos20Min());
			}
		} catch (ClassNotFoundException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		
		JButton btnGuardar = new JButton("Guardar");
		btnGuardar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				DTOPuntaje puntaje = new DTOPuntaje();
				
				
				puntaje.setCalificacion(Integer.parseInt((String)calificacion.getSelectedItem()));
				puntaje.setGolesConvertidos(Integer.parseInt((String)golesConvertidos.getSelectedItem()));
				puntaje.setGolesRecibidos(Integer.parseInt((String)golesRecibidos.getSelectedItem()));
				puntaje.setGolesEnContra(Integer.parseInt((String)golesEnContra.getSelectedItem()));
				puntaje.setPenalesConvertidos(Integer.parseInt((String)penalesConvertidos.getSelectedItem()));
				puntaje.setPenalesAtajados(Integer.parseInt((String)penalesAtajados.getSelectedItem()));
				puntaje.setPenalesErrados(Integer.parseInt((String)penalesErrados.getSelectedItem()));
				puntaje.setAmarilla(chckbxTarjetaAmarilla.isSelected());
				puntaje.setRoja(chckbxTarjetaRoja.isSelected());
				puntaje.setFiguraCancha(chckbxFigura.isSelected());
				puntaje.setJugoMenos20Min(chckbxJugoMenosDe.isSelected());
				puntaje.setId_jugador(dtoJugador.getId_jugador());
				puntaje.setId_fecha(id_fecha);
				puntajeCargado=puntaje;
				if (equipo ==1)	
				GestionarPuntajeFecha.closeWindowEq1();
				else
				GestionarPuntajeFecha.closeWindowEq2();

			

			}
		});
		btnGuardar.setBounds(10, 406, 98, 29);
		contentPane.add(btnGuardar);
		
		JButton btnCancelar = new JButton("Cancelar");
		btnCancelar.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(JOptionPane.showConfirmDialog(null, "esta seguro que desea salir?")==0)
					
					
					if (equipo ==1)	
						GestionarPuntajeFecha.closeWindowEq1();
						else
						GestionarPuntajeFecha.closeWindowEq2();
			}
		});
		btnCancelar.setBounds(203, 406, 98, 29);
		contentPane.add(btnCancelar);
		
		JLabel nombreJugador = new JLabel(dtoJugador.getApellido()+" "+dtoJugador.getNombre());
		nombreJugador.setBounds(92, 37, 189, 14);
		contentPane.add(nombreJugador);
	
	}
	public DTOPuntaje getPuntajeCargado() {
		return puntajeCargado;
	}
	
}
